當我們按下 enter 後 Internet 會經過許多過程才能將資訊傳遞到另一端,而每種訊息格式依照規範模型分布在不同的層級,並協議好各層級的溝通標準、對應的傳輸規則,因此在了解 WebRTC 前我們可以先從網頁通訊說起,藉此知道 WebRTC 採取哪些通訊協議。
兩者都是網路架構模型,TCP/IP 由兩位圖靈獎獲得者 Vint Cert 及 Robert Kahn 所開發,取名自 TCP(傳輸控制協定)及 IP(網際網路協定),OSI 則是由 ISO 國際標準化組織提出。
圖片來源: OSI模型、TCP/IP协议栈
開放式系統互聯模型由國際標準化組織提出,它將通訊拆成7個抽象層,每一層都堆疊在最後一層之上。
第七層 Application 應用層
提供應用程序和用戶 API,處理用戶需求,例如電子郵件、網頁瀏覽等。
第六層 Presentation 展示層
數據的格式化、加密和壓縮,以確保不同系統間的互通。
第五層 Session 會議層
負責建立、管理和終止通信會話,包括數據同步和錯誤處理。
第四層 Transport 傳輸層
協助 OSI 前三層與 OSI 後三層進行溝通;port 與 port 之間的溝通。
第三層 Network 網路層
路由和轉發,決定數據如何從源到目的地。
第二層 Data Link 資料連結層
確保數據傳輸的完整性,包括檢查和修正錯誤。
第一層 Physical 實體層
處理實際的硬體連接、電流、電壓、電纜……等的通信。
下面透過 TCP/IP 再說明一下每一層的用途!
考古一下🚀~TCP/IP 協定的由來可追溯至20世紀50年代末,當時美蘇冷戰,美國為確保其計算機網絡在戰爭中不被摧毀及穩定性,建立了阿帕網(APPAnet)。然而,在不同計算機網絡間通信上有限制,因此APPA開始研究新的協議,這促成了”互聯網”的誕生。最初,阿帕網使用 NCP 協議,但限制在同構環境中使用。為了解決這個問題,科學家 Vint Cert 及 Robert Kahn 提出了 TCP/IP 協議,確保不同計算機和環境間的互聯,成為互聯網之父。雖然 TCP/IP 提出後一度被視為簡化的 OSI 模型,但經過改進,最終成為全球互聯網的基石。
Application 應用層
負責應用程式的通訊;包括各種協議;例如:HTTP(網頁瀏覽)、HTTPS(安全的HTTP協議)、SMTP(電子郵件)、FTP(文件傳輸)、DNS(將域名轉換為IP地址)……等
Transport 傳輸層
處理 port 與 port 之間的溝通;包含TCP/UDP,WebRTC 使用 Transport 層來實現瀏覽器之間的通信。WebRTC通常使用 UDP 協議,以實現低延遲和高效的實時通信。
Network 網路層
負責將數據從一個地方傳送到另一個地方,就像郵局將信件從寄件人送到收件人一樣。這一層使用IP(Internet Protocol)來標識設備的位置,有兩種主要的IP協議,分別是 IPv4 和 IPv6。
備註:IPv4 使用32位地址,通常表示為四組數字,每組範圍在0到255之間,隨著IPv4地址耗盡,IPv6 將成為未來互聯網的主要協議。
Network Access 網路訪問層
處理實際的硬體連接、電流、電壓、電纜……等的通信。
用一張圖說明TCP/IP模型做的事:借用 Huli 從傳紙條輕鬆學習基本網路概念 圖片可以很清楚的了解!
圖片來源: Huli 從傳紙條輕鬆學習基本網路概念
下一篇會說明 傳輸層的TCP/UDP~🙌
參考資料
[第四週] 網路基礎 - TCP/IP | Yakim shu (yakimhsu.com)
OSI七层模型与TCP/IP四层结构的区别/联系 | 阿培 (cntsp.github.io)
OSI七層架構 和 TCP/IP通訊協定 的比較 - HackMD